---
layout: default
title: 更新日志 &middot; SUI Mobile
---

<div class="docs-sub-header">
  {% include masthead.html %}
  <div class="container">
    <div class="docs-sub-content">
      <h2 class="page-title">更新日志</h2>
      <p class='page-description'>当前最新版本为 V{{ site.version }}</p>
    </div>
    {% include ad.html %}
  </div>
</div>

<div class="container">
  <div class="column-group">
    <div class="column docs-content">
      <div class="docs-section changelog">
        <h2>版本号说明</h2>
        <p>SUI Mobile 版本号由x.y.z三位组成，符合 <a href='http://semver.org/lang/zh-CN/' target="_blank">语义化版本号</a> 规范：</p>
        <ul>
          <li>主版本号：当做了不兼容的API 修改</li>
          <li>次版本号：当做了向下兼容的功能性新增</li>
          <li>修订号：当做了向下兼容的问题修正</li>
        </ul>
        <p>CND 地址中的三位数字就表示当前的版本号。比如你引用 <code>g.alicdn.com/msui/sm/{{ site.version }}/css/sm.min.css</code>，那么版本号就是 <code>{{ site.version }}</code>。</p>
        <p>SUI Mobile 采用增量更新，每次发布到线上的版本永远不会再变化。这里记录了每一个版本更新的内容。</p>

        <h2>更新日志</h2>

        <h3>V0.6.2 <sub>2016.01.27</sub></h3>
        <ul>
            <li>返回或进入曾经访问过的页面时，<b>支持记住滚动条位置</b></li>
            <li><b>允许路由不使用缓存(data-no-cache)</b>，参考<a href="http://m.sui.taobao.org/components/#router" target="_blank">文档，往下搜索“缓存”关键字</a></li>
            <li>路由优化：如果非noscheme形式的链接，且协议不是http(s)，那么路由不会处理这类链接</li>
            <li>路由添加 beforePageSwitch 事件</li>
            <li>支持脚本引用<b>不放在body标签结束前</b></li>
            <li>修复city-picker有默认值初始化时的缺憾</li>
            <li>支持外部元素交互JS触发picker打开</li>
            <li>取消page-group的可滚动，解决popup展示问题</li>
            <li>修正工具栏以及其他iconfont尺寸定位偏差</li>
        </ul>

        <h3>V0.6.1 <sub>2016.01.10</sub></h3>
        <ul>
            <li>
                重构 router 功能，<a href="../demos/routers/" target="_blank">新Router体验Demo</a>
                <p class="notice">注意：这个版本中的 <a href="https://github.com/sdc-alibaba/SUI-Mobile/blob/router/js/router.js" target="_blank">Router </a>功能有了不向下兼容的升级，故版本号升至0.6.0，使用时请确保符合路由功能约定，具体参阅 <a href="../components/#router">路由文档</a></p>
                <ol>
                    <li>使用路由功能加载的页面必需有约定的 dom 结构</li>
                    <li>在全局禁用的基础上，允许根据需要设定符合条件的链接在点击时不使用路由功能</li>
                    <li>新增 <code>beforePageRemove</code> 和 <code>pageRemoved</code> 事件</li>
                    <li>页面切换后移除前一个页面的 dom 而不是像之前那样保留（内联页面切换不会做移除操作）</li>
                    <li><code>.back</code> 后退按钮上的 <code>href</code> href 属性不会读取使用</li>
                    <li>ajax 加载失败（比如跨域或服务端失败等）后会像普通行为那样打开该页面（<code>location.href = 'xxxx'</code>）</li>
                    <li>工具方法性能优化，核心库体积减少</li>
                    <li>部分图片图标剥离出核心库，保留原有的少量iconfont。</li>
                </ol>
            </li>
        </ul>

        <h3>V0.5.9 <sub>12.31.23:59, 2015最后一次发布，大家2016年‘16~’</sub></h3>
        <ul>
            <li>修复js滚动模式下，下拉刷新没有顶部bar时失效的bug;</li>
            <li>优化下拉刷新:正在加载时，refresh事件不会触发两次，只有执行 $.pullToRefreshDone才会再次触发refresh。允许横向滚动</li>
            <li>支持一个页面内多个标签页内的无限滚动</li>
            <li>现在判断滚动条类型的优先级是: <b>data-type指定 > 系统版本号</b></li>
            <li>修复初次showPreloader会关闭其他modal类组件的问题</li>
        </ul>
        <h3>V0.5.8 <sub>2015.12.18</sub></h3>
        <ul>
            <li>完成顶部触发的无限滚动</li>
            <li>修复安卓微信下特殊input功能和下拉刷新的问题</li>
            <li>JS滚动模式事件触发问题修复</li>
            <li>showPreloader过程中弹出toast导致遮罩层无法消除问题修复</li>
            <li>对话框支持在根节点追加自定义class</li>
            <li>文档更新</li>
        </ul>
        <h3>V0.5.7 <sub>2015.12.11</sub></h3>
        <ul>
            <li>修复下拉刷新后上拖页面，标题栏消失缩回的bug</li>
            <li>toast改为非独占式类型，也即不会被阻塞在modal队列里</li>
            <li>$.showPreloader, $.showIndicator逻辑更新,不会重复刷出</li>
            <li>日历、picker在微信、qq环境触发组件时弹出软键盘问题修复（但微信webview本身有些bug）</li>
            <li>android 5+下列表行间分割线优化</li>
            <li>暴露<a href="http://m.sui.taobao.org//components/#device">$.device工具</a>，协助开发者设备侦测</li>
            <li>delete几乎不用的换色模块，压缩后css体积精简17K</li>
            <li>文档更新，FAQ丰富</li>
        </ul>

        <h3>V0.5.6 <sub>2015.12.4</sub></h3>
        <ul>
            <li>Picker:(包括日期和省市Picker)默认值逻辑增强，并提高reRender性能。fix #24 #29 #55 #109 #126</li>
            <li>Router: 修复页面转场动画与快速切换导致的问题;解决ajax加载页面必须有body标签的不健壮问题;修复直接访问带 hash 的 url 时，可能的空白页面情况。fix #112 129</li>
            <li>优化样式工程, 精简了10KB+的压缩体积</li>
        </ul>

        <h3>V0.5.4 <sub>2015.11.27</sub></h3>
        <ul>
            <li>picker穿透区域问题修复</li>
            <li>修改fastclick源码，解决其面对label组合控件和300ms延迟的混合问题</li>
            <li>删除默认的并不友好的template7引擎并解决依赖,开放给用户自选。</li>
            <li>toast组件支持自定义持续时间和样式。</li>
            <li>多个modal类组件同时呼起的队列阻塞机制完善。</li>
            <li>修正多个.page下有幻灯片时，dot导航的个数偏差。</li>
        </ul>

        <h3>V0.5.3</h3>
        <ul>
          <li>android chrome等浏览器 在页面初次加载时不触发popstate导致的路由问题修复</li>
          <li>多侧栏实例引用 （panel）问题修复</li>
          <li>在IOS下 switch 开关控件交互响应延迟问题修复</li>
          <li>IOS下自动识别数字为电话号码，导致被路由体系拦截问题修正</li>
          <li>增加 $.smVersion 版本号属性</li>
          <li>cssmin 任务自动merge property行为导致属性hack时错误，已修复</li>
        </ul>

        <h3>V0.5.2</h3>
        <p><b>重要变更：CDN资源路径前半部分由 g.alicdn.com/sui-mobile/ 变更为 g.alicdn.com/msui/</b>。比如<a href="//g.alicdn.com/msui/sm/0.5.2/css/sm.min.css" >g.alicdn.com/msui/sm/0.5.2/css/sm.min.css</a></p>
        <ul>
          <li>路由可以由用户选择是否开启。<a href="http://m.sui.taobao.org/components/#init">Router初始化控制参数</a></li>
          <li>解决各个webview针对页面重新加载（包括后退造成的）时History State的处理差异</li>
          <li>更新文档和Demo</li>
        </ul>

        <h3>V0.5.1</h3>
        <p>因为PC和移动端表现差异，官网一些Demo<b>在PC上看起来有bug</b>，但在移动端是正常的。</p>
        <ul>
          <li><b>修复路由体系在非SPA应用和非入口页加载页面时的路由问题</b></li>
          <li>解决部分模块的<code>$</code>冲突问题</li>
          <li>解决一个搜索框模块导致页面显示不正常的问题</li>
          <li>更新部分文档</li>
        </ul>

        <h3>V0.5.0</h3>
        <ul>
          <li>增加了一个新的 <a href='/components/#router' data-ignore='push'>路由器</a>，替代原来的 push.js</li>
        </ul>

        <h3>V0.4.2</h3>
        <ul>
          <li>修复了 $.Template7 中使用 each 之类的辅助方法时的报错。</li>
          <li>更新了 <a href='/components/#list' data-ignore='push'>列表</a> 的样式，现在右箭头是上下居中的。并且换了一个新的箭头，更符合iOS的风格</li>
          <li>修复了 <a href='/components/#themes' data-ignore='push'>夜间模式</a> 下一些组件的颜色问题 </li>
        </ul>

        <h3>V0.4.1</h3>
        <ul>
          <li>修复了 <a href='/components/#push' data-ignore='push'>push.js</a> 加载新页面时无法加载 popup 的bug，以及当没有设置 transition 的时候返回上一页没有删除header的bug。</li>
          <li><a href='/components/#push' data-ignore='push'>push.js</a> 增加了一个不记住滚动位置的功能。现在你可以在 <code>.content</code> 上增加一个 <code>data-remember-scroll='false'</code>，这样就不会自动恢复上一次的滚动位置。</li>
        </ul>

        <h3>V0.4.0</h3>
        <ul>
          <li>从 v0.4.0 版本开始，native 模式下的滚动条不会在强制在 <code>.content</code> 容器下 wrap 一个 <code>.content-inner</code> 容器。参见<a href='/components/#scroller' data-ignore='push'>滚动条</a>文档 </li>
          <li>修复了有一些Zepto的版本中 <code>$.fn.show</code> 方法会影响动画执行导致对话框无法消失的bug。</li>
          <li>更新了<a href='/components/#init' data-ignore='push'>初始化</a> 文档</li>
        </ul>

        <h3>V0.3.2</h3>
        <ul>
          <li>修复了在三星 S4 (Android 4.2) 系统下，无线滚动加载内容之后导致页面无法滚动的bug。</li>
        </ul>

        <h3>V0.3.1</h3>
        <ul>
          <li>优化了 <a href='/components/#picker' data-ignore='push'>picker</a> 在安卓机器上的性能问题</li>
          <li>增加了一个新的可选的 <a href='/extends/#city-picker' data-ignore='push'>省市区选择组件</a></li>
          <li>增加了一个新的 <a href='/components/#check-list' data-ignore='push'>可选择列表</a></li>
          <li>优化滚动性能：从 v0.3.1开始 <a href='/components/#scroller' data-ignore='push'>滚动条</a> 默认设置为 <code>native</code> 模式，以解决auto模式下JS滚动条的性能问题。</li>
        </ul>

        <h3>V0.3.0</h3>
        <ul>
          <li>增加了一个新的<a href='/components/#picker' data-ignore='push'>picker</a> 组件</li>
          <li>增加了一个新的<a href='/components/#datetime-picker' data-ignore='push'>日期时间选择</a> 组件</li>
          <li>因为性能问题，新增的两个组件暂时不建议使用。后面优化之后再使用。</li>
          <li>修复了 <a href='/components/#toast' data-ignore='push'>toast</a>左右不居中的问题</li>
          <li>更新了大部分组件的颜色，现在更符合视觉规范。</li>
        </ul>

        <h3>V0.2.2</h3>
        <ul>
          <li>修复了<a href='/components/#init' data-ignore='push'>初始化</a> 时，如果新加载的页面没有 <code>.content-inner</code> 会在 pageInit 之后重置页面html的bug</li>
        </ul>

        <h3>V0.2.1</h3>
        <ul>
          <li> 增加了一个新的<a href='/components/#init' data-ignore='push'>初始化</a>方法： <code>$.init()</code>。并且 <code>autoInit</code> 默认为false。请参见文档。</li>
          <li><a href='/components/#scroller' data-ignore='push'>滚动条</a>中自动添加的 <code>.scroller-content-inner</code> 现在被重命名为 <code>.content-inner</code>。如果有用到这个类名的，请注意升级到此版本后需要修改一下。</li>
          <li> 增加了一个新的 <a href='/components/#toast' data-ignore='push'>toast</a>组件</li>
        </ul>
        <h3>V0.2.0</h3>
        <ul>
          <li>增加了一个全新的颜色主题，有夜间模式和多种颜色可选： <a href='/components/#colors' data-ignore='push'>颜色主题(测试)</a></li>
          <li>增加了一个全新的 <a href='/components/#calendar' data-ignore='push'>日历组件</a></li>
          <li>修复了没有 <a href='/components/#panel' data-ignore='push'>侧栏</a> 时向右滑动的JS错误</li>
          <li>修复了 <a href='/components/#panel' data-ignore='push'>侧栏</a> 在有些安卓手机上无法滑动导航栏的bug</li>
          <li>修复了JS模式下， <a href='/components/#scroller' data-ignore='push'>滚动条</a> 在push.js中记住滚动位置的bug</li>
          <li>修复了JS模式下， <a href='/components/#scroller' data-ignore='push'>滚动条</a> scrollTop 方法没有返回数字的bug</li>
          <li>修复了JS模式下， <a href='/components/#popup' data-ignore='push'>popup</a> 无法滚动的问题</li>
        </ul>

        <h3>V0.1.0</h3>
        <ul>
          <li>修复了 push.js 当没有指定 <code>data-transition</code> 的时候无法触发 <code>pageInit</code> 的bug</li>
          <li>增加了一个新组件： <a href='/components/#panel' data-ignore='push'>侧栏</a></li>
          <li>增加了全新的主题： <a href='/components/#themes' data-ignore='push'>主题(测试)</a></li>
          <li>修复了 <a href='/extends/#browser' data-ignore='push'>图片浏览器</a> 中的bug</li>
          <li>修复了 <a href='/components/#push' data-ignore='push'>push.js</a> 中对滚动条位置记录的bug</li>
          <li>修复了后退时初始化页面的bug</li>
          <li>改变了 <a href='/components/#layout' data-ignore='push'>页面基本结构</a>.增加了一个 <code>.page</code> 容器以进行整页动画。</li>
        </ul>

        <h3>V0.0.6</h3>
        <ul>
          <li>修复了 <code>$.pageInit</code> 会执行两次的bug，这样会导致部分组件如下拉刷新会在一次操作中触发两次回调。</li>
          <li>搜索栏中增加了一个 <a href='/components/#searchbar' target="_blank" data-ignore='push'>苹果风格的样式</a></li>
          <li>修复了push.js没有加载popup的bug</li>
        </ul>

      </div>
  </div>

  <div class="column">
    <!-- Footer -->
    {% include footer.html %}
  </div>
</div>
